iT邦幫忙

2024 iThome 鐵人賽

DAY 15
0

Toast是個可以用來顯示短暫訊息的物件
但因為訊息只會短暫顯示在螢幕下方且一段時間後就會自動消失,所以通常會用來顯示一些沒那麼重要的訊息
要使用Toast也不難,只需要將利用這行

Toast.makeText(context, "這是一個Toast訊息", Toast.LENGTH_SHORT).show();

將內容改成
context -> 要顯示的那個Activity名稱
"這是一個Toast訊息" -> 要顯示的訊息
就可以了
context通常是用來填上要顯示Toast訊息的那個Activity名稱
"這是一個 Toast 訊息"也可以自行更改成要顯示的文字內容
Toast.LENGTH_SHORTToast.LENGTH_LONG差別就在於Toast的顯示時間的長短,時間也沒有差很多,分別為2秒和3.5秒

下面帶個簡單的範例
頁面上有一個Button且這個Button在按下後會顯示Toast內容(按鈕)

Toast.makeText(MainActivity.this,"按鈕",Toast.LENGTH_SHORT).show();

只要將上面那行改成這樣就好了

然後執行後就長這樣

  • 這是按下前的樣子
    https://ithelp.ithome.com.tw/upload/images/20240923/20168456horhj3z5Le.png
  • 按下後的樣子
    https://ithelp.ithome.com.tw/upload/images/20240923/20168456hQhbQZkrqI.png

完整的程式碼在這邊

xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    
    <Button
        android:id="@+id/main_test_btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Button"
        app:layout_constraintBottom_toTopOf="@+id/guideline4"
        app:layout_constraintEnd_toStartOf="@+id/guideline2"
        app:layout_constraintStart_toStartOf="@+id/guideline"
        app:layout_constraintTop_toTopOf="@+id/guideline3" />

    <androidx.constraintlayout.widget.Guideline
        android:id="@+id/guideline"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.048661802" />

    <androidx.constraintlayout.widget.Guideline
        android:id="@+id/guideline2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.43309003" />

    <androidx.constraintlayout.widget.Guideline
        android:id="@+id/guideline3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.027359782" />

    <androidx.constraintlayout.widget.Guideline
        android:id="@+id/guideline4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.12" />
</androidx.constraintlayout.widget.ConstraintLayout>

MainActivity

package com.example.test_2;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.SeekBar;
import android.widget.Toast;

import androidx.activity.EdgeToEdge;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {
    private Button testBtn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        EdgeToEdge.enable(this);
        setContentView(R.layout.activity_main);

        testBtn = findViewById(R.id.main_test_btn);
        testBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Toast.makeText(MainActivity.this,"按鈕",Toast.LENGTH_SHORT).show();
            }
        });
    }
}

下篇會介紹SeekBar


上一篇
[Day 14] 框線、底線、虛線
下一篇
[Day 16] SeekBar介紹
系列文
深入Android Java程式語言 - 打造我的行動應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言